import Vue from "vue";

// 定义 Loading 对象
const DateTimeExtension = {
  // install 是默认的方法。当外界在 use 这个组件的时候，就会调用本身的 install 方法，同时传一个 Vue 这个类的参数。
  install: function(Vue) {
    // 对Date的扩展，将 Date 转化为指定格式的String
    Date.prototype.Format = function(fmt) {
      //第一个参数，要转化的时间戳，第二个参数想要转换的格式   (new Date()).Format(1543905825,"yyyy-MM-dd hh:mm:ss")  ///毫秒  10位
      let values = null;
      values = this;
      // if (!value) {
      //   values = new Date(); //第一个参数为空默认当前时间
      // } else {
      //   values = new Date(value * 1000); //后台返回的时间戳转为标准格式///毫秒  13位
      // }
      let o = {
        "M+": values.getMonth() + 1, //月份
        "d+": values.getDate(), //日
        "h+": values.getHours(), //小时
        "m+": values.getMinutes(), //分
        "s+": values.getSeconds(), //秒
        "q+": Math.floor((values.getMonth() + 3) / 3) //季度
        // "S": value.getMilliseconds() //毫秒
      };
      if (/(y+)/.test(fmt))
        fmt = fmt.replace(
          RegExp.$1,
          (values.getFullYear() + "").substr(4 - RegExp.$1.length)
        );
      for (let k in o)
        if (new RegExp("(" + k + ")").test(fmt))
          fmt = fmt.replace(
            RegExp.$1,
            RegExp.$1.length == 1
              ? o[k]
              : ("00" + o[k]).substr(("" + o[k]).length)
          );
      return fmt;
    };
  }
};

export default DateTimeExtension;
